package com.hhit.bigscreenbackmanage.dao.jjgl;

import com.alibaba.fastjson.JSONObject;
import com.hhit.bigscreenbackmanage.entity.jjgl.TJjglCspsyb;
import com.hhit.bigscreenbackmanage.entity.jjgl.TJjglYszxqk;
import com.hhit.bigscreenbackmanage.vo.jjgl.*;
import org.apache.ibatis.annotations.Param;
import java.util.List;
import java.util.Map;

/**
 * 初设评审月报(TJjglCspsyb)表数据库访问层
 *
 * @author makejava
 * @since 2021-07-20 21:51:57
 */
public interface TJjglCspsybDao {

    /**
     * 通过ID查询单条数据
     *
     * @param id 主键
     * @return 实例对象
     */
    TJjglCspsyb queryById(String id);


    /**
     * 通过实体作为筛选条件查询
     *
     * @param jsonObject 实例对象
     * @return 对象列表
     */
    List<TJjglCspsyb> queryAll(JSONObject jsonObject);
    /**
     * 通过实体作为筛选条件查询总数
     *
     * @param jsonObject 实例对象
     * @return 对象列表
     */
    int queryAllCount(JSONObject jsonObject);

    /**
     * 新增数据
     *
     * @param tJjglCspsyb 实例对象
     * @return 影响行数
     */
    int insert(TJjglCspsyb tJjglCspsyb);

    /**
     * 修改数据
     *
     * @param tJjglCspsyb 实例对象
     * @return 影响行数
     */
    int update(TJjglCspsyb tJjglCspsyb);

    /**
     * 通过主键删除数据
     *
     * @param ids 主键
     * @return 影响行数
     */
    int deleteById(@Param("ids")List<String> ids);


    /**
     * 获取三算信息
     * @return
     */
    SsXxVO getSsxx(@Param("dy") String dy,@Param("list") List<String> dyList);


    int getGsGsPc_cwb();

    int getGsGsPc_cshi();

    int getGsGsPc_pcxm();

    String nmggzMonth();

    String nmggzYear();

    List<XyglgzVO> getXyGlgz(JSONObject obj);


    int addXyGlgz(@Param("list") List<XyglgzVO> list,@Param("dataTime") String dataTime);

    GmJyxCsPsYjCjVO getGmJyxCsPsYjCj(@Param("dydj") String dydj);

    GmJyxCsPsYjCjVO getCsPsJhZx(@Param("dydj") String dydj);

    // 大屏-弹出列表-初设评审计划执行
    List<YysZxDpListVO> getYysZxDpList_jh(JSONObject obj);

    // 大屏-弹出列表-初设评审计划执行(条数)
    int getYysZxDpList_jhCount(JSONObject obj);

    // 大屏-弹出列表-初设评审实际执行
    List<YysZxDpListVO> getYysZxDpList_sj(JSONObject obj);

    // 大屏-弹出列表-初设评审实际执行(条数)
    int getYysZxDpList_sjCount(JSONObject obj);


    // 屏-弹出列表-概算估算偏差
    List<GsGsPsDpListVO> getGsGsPsDpList(JSONObject obj);
    int getGsGsPsDpListCount(JSONObject obj);

    // 屏-弹出列表-农民工工资
    List<NmgGzDpListVO> getNmgGzDpList(JSONObject obj);
    int getNmgGzDpListCount(JSONObject obj);


    // 大屏-弹出列表-规模及以下初设评审意见出具
    List<YysZxDpListVO> getGmJyxCsPsYjCjDpList(JSONObject obj);
    int getGmJyxCsPsYjCjDpListCount(JSONObject obj);

}